summaryrefslogtreecommitdiff
path: root/app/[lng]/evcp/(evcp)/(eng)/swp-document-upload/page.tsx
diff options
context:
space:
mode:
authorjoonhoekim <26rote@gmail.com>2025-10-23 18:44:19 +0900
committerjoonhoekim <26rote@gmail.com>2025-10-23 18:44:19 +0900
commit04bd1965c3699a4b29ed9c9627574bfeedd3d6c6 (patch)
tree691b9a6e844a788937a240d47e77e8cfa848a88a /app/[lng]/evcp/(evcp)/(eng)/swp-document-upload/page.tsx
parent535e234dbd674bf2e5ecf344e03ed8ae5b2cbd6c (diff)
(김준회) SWP 문서 업로드 (Submisssion) 초기 개발건
Diffstat (limited to 'app/[lng]/evcp/(evcp)/(eng)/swp-document-upload/page.tsx')
-rw-r--r--app/[lng]/evcp/(evcp)/(eng)/swp-document-upload/page.tsx58
1 files changed, 58 insertions, 0 deletions
diff --git a/app/[lng]/evcp/(evcp)/(eng)/swp-document-upload/page.tsx b/app/[lng]/evcp/(evcp)/(eng)/swp-document-upload/page.tsx
new file mode 100644
index 00000000..25a0bfe6
--- /dev/null
+++ b/app/[lng]/evcp/(evcp)/(eng)/swp-document-upload/page.tsx
@@ -0,0 +1,58 @@
+import { Suspense } from "react";
+import { Skeleton } from "@/components/ui/skeleton";
+import { Card, CardContent, CardDescription, CardHeader, CardTitle } from "@/components/ui/card";
+import SwpDocumentPage from "./swp-document-page";
+
+export const metadata = {
+ title: "SWP 문서 관리",
+ description: "SWP 시스템 문서 조회 및 동기화",
+};
+
+// ============================================================================
+// 로딩 스켈레톤
+// ============================================================================
+
+function SwpDocumentSkeleton() {
+ return (
+ <Card>
+ <CardHeader>
+ <div className="flex items-center justify-between">
+ <Skeleton className="h-8 w-32" />
+ <Skeleton className="h-10 w-40" />
+ </div>
+ </CardHeader>
+ <CardContent className="space-y-4">
+ <Skeleton className="h-32 w-full" />
+ <Skeleton className="h-96 w-full" />
+ </CardContent>
+ </Card>
+ );
+}
+
+export default async function SwpDocumentUploadPage({
+ searchParams,
+}: {
+ searchParams: Promise<{ [key: string]: string | string[] | undefined }>;
+}) {
+ const params = await searchParams;
+
+ return (
+ <div className="container mx-auto py-6 space-y-6">
+ {/* 헤더 */}
+ <Card>
+ <CardHeader>
+ <CardTitle className="text-2xl">SWP 문서 관리</CardTitle>
+ <CardDescription>
+ 외부 시스템(SWP)에서 문서 및 첨부파일을 조회하고 동기화합니다.
+ 문서 → 리비전 → 파일 계층 구조로 확인할 수 있습니다.
+ </CardDescription>
+ </CardHeader>
+ </Card>
+
+ {/* 메인 컨텐츠 */}
+ <Suspense fallback={<SwpDocumentSkeleton />}>
+ <SwpDocumentPage searchParams={params} />
+ </Suspense>
+ </div>
+ );
+}